#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date    : 2020-08-28 09:45:09
# @Author  : Zuo Zhongfei (zuozhongfei@126.com)
# @Link    : www
# @Version : $Id$

import os
import json

# 验证用户：最后一个remember_me.py版本假设用户要么已输入其用户名，
# 要么是首次运行该程序。我们应修改这个程序，
# 以应对这样的情形：当前和最后一次运行该程序的用户并非同一个人。
# 为此，在greet_user()中打印欢迎用户回来的消息前，
# 先询问他用户名是否是对的。如果不对，
# 就调用get_new_username()让用户输入正确的用户名。


def get_stored_username():
    """获取本地存储的用户名"""
    filename = "username.json"
    try:
        with open(filename) as file_object:
            username = json.load(file_object)
    except Exception as e:
        return None
    else:
        return username


def get_new_username():
    """提示用户输入用户名"""
    username = input("你叫什么名字：")
    filename = 'username.json'
    with open(filename, 'w') as file_object:
        json.dump(username, file_object)
        print("我记住你了：" + username + "!")
    return username


def get_input_username():
    username = input("输入你的名字:")
    return username


def greet_user():
    """问候用户，并指出其名字"""
    username = get_stored_username()
    if username:
        if username == get_input_username():
            print("欢迎回来：" + username)
        else:
            print("你不是存储的用户，不欢迎你！")
    else:
        username = get_new_username()


greet_user()
